package com.lcx.movie.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lcx.movie.entity.ScheduleSeat;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author 李丽君
 * @version 1.0
 * @Description
 * @date 2025/2/20 14:40
 */
@Mapper
public interface ScheduleSeatMapper extends BaseMapper<ScheduleSeat> {
    /**
     * 检查当前影厅是否有座位信息
     *
     * @param hallId 影厅id
     * @return 受影响的行数
     */
    public int getSeatsByHallId(@Param("hallId") int hallId);
    /**
     * 根据排片 ID 查询对应的座位安排信息。
     *
     * @param scheduleId 排片的唯一标识符，用于定位具体的排片记录。
     * @return 返回一个包含所有与该排片 ID 相关的座位安排信息的列表（List<ScheduleSeat>）。
     * 如果没有找到相关记录，则返回空列表。
     */
    List<ScheduleSeat> scheduleByScheduleId(Integer scheduleId);
    /**
     * 批量更新座位安排的状态。
     *
     * @param list 一个字符串列表，包含需要更新的座位标识（例如座位 ID）。
     *             列表中的每个元素代表一个需要被更新的座位。
     * @return 返回受影响的行数，表示成功更新的座位数量。
     * 如果传入的列表为空或更新失败，则返回值可能为 0。
     */
    int updateScheduleSeat(List<String> list);
}
